Skip to content

[WS-2650]: Sign-in popup banner implementation#14082

Draft
SantaZena wants to merge 12 commits into
latestfrom
WS-2650-sign-in-popup-banner-implementation
Draft

[WS-2650]: Sign-in popup banner implementation#14082
SantaZena wants to merge 12 commits into
latestfrom
WS-2650-sign-in-popup-banner-implementation

Conversation

@SantaZena

@SantaZena SantaZena commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Resolves JIRA: https://bbc.atlassian.net/browse/WS-2650

Summary

Adds a sign-in popup modal that surfaces the account promotional banner in a focus-trapped, dismissible dialog with responsive imagery.

Code changes

  • Add AccountSignInModal component with backdrop, focus trapping and Escape/click-to-close handling.
  • Add useTrappedFocus hook to keep keyboard focus within the modal.
  • Add a styleOverrides prop to PromotionalBanner so consumers can override slot styles, replacing the promo-banner-* class hooks.
  • Forward style overrides through AccountPromotionalBanner and render breakpoint-specific sign-in images via CSS variables.
  • Add responsive sign-in images (mobile/tablet/desktop) and remove the redundant globe images.

Testing

  1. Run yarn dev and open a hindi article (e.g. /hindi/articles/c0469479x9xo) (The user should not be signed in).
  2. Trigger the sign-in modal by clicking on "Save for later" and confirm it opens centred over a dimmed backdrop.
  3. Tab through the modal and confirm focus stays trapped inside it.
  4. Press Escape, click the backdrop, and click the close button — each should dismiss the modal.
  5. Resize across mobile, tablet and desktop breakpoints and confirm the correct sign-in image renders.

Useful Links

Figma design: https://www.figma.com/design/8xqdz6WAYt2QpcLguVBCFz/WS-Sign-In-prompt?node-id=117-4210&p=f&t=bLX9drCEGAV2HoZj-0

@SantaZena SantaZena self-assigned this Jun 2, 2026
@LukasFrm LukasFrm changed the title Ws 2650 sign in popup banner implementation [WS-2650]: Sign-in popup banner implementation Jun 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants